Progress Guarantees When Composing Lock-Free Objects

نویسندگان

  • Nhan Nguyen Dang
  • Philippas Tsigas
چکیده

Highly concurrent and reliable data objects are vital for parallel programming. Lock-free shared data objects are highly concurrent and guarantee that at least one operation, from a set of concurrently executed operations, finishes after a finite number of steps regardless of the state of the other operations. Lock-free data objects provide progress guarantees on the object level. In this paper, we first examine the progress guarantees provided by lock-free shared data objects that have been constructed by composing other lock-free data objects. We observe that although lock-free data objects are composable when it comes to linearizability, when it comes to progress guarantees they are not. More specifically we show that when a lock-free data object is used as a component (is shared) by two or more lock-free data objects concurrently, these objects can no longer guarantee lock-free progress. This makes it impossible for programmers to directly compose lock-free data objects and guarantee lock-freedom. To help programmability in concurrent settings, this paper presents a new synchronization mechanism for composing lock-free data objects. The proposed synchronization mechanism provides an interface to be used when calling a lock-free object from other lock-free objects, and guarantees lock-free progress for every object constructed. An experimental evaluation of the performance cost that the new mechanism introduces, as expected, for providing progress guarantees is also presented.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

On Composability, Efficient Design and Memory Reclamation of Lock-free Data Structures

The transition to multicore processors has brought synchronization, a fundamental challenge in computer science, into focus. In looking for solutions to the problem, interest has developed in the lock-free approach, which has been proven to achieve several advantages over the traditional mutual exclusion approach. This thesis studies challenges in interprocess synchronization in shared memory m...

متن کامل

Obstruction-Free Algorithms Can Be Practically Wait-Free

The obstruction-free progress condition is weaker than previous nonblocking progress conditions such as lock-freedom and waitfreedom, and admits simpler implementations that are faster in the uncontended case. Pragmatic contention management techniques appear to be effective at facilitating progress in practice, but, as far as we know, none guarantees progress. We present a transformation that ...

متن کامل

Proving Correctness of a Distributed Shared Memory Implementation

DiSOM [3, 4, 2] is a distributed shared memory system that o ers users an atomic collection of memory cells provided they satisfy certain well-formedness conditions. This report proves the correctness of DiSOM. The system partitions memory into a set of objects and implicitly associates a read-write lock with each object. Users synchronize accesses to these objects explicitly executing synchron...

متن کامل

Lock-Free Algorithms for Thread Safe Programming

An object is lock-free if it guarantees that in a system where multiple threads are manipulating the object, some thread will complete its operation on the object in a finite number of steps, no matter what happens to other threads. More practically, lock-free programming is a technique to achieve thread safety without the use of locks, which are the current standard. Lock-free objects (LFOs) h...

متن کامل

k-Abortable Objects: Progress Under High Contention

In this paper, we define k-abortable objects, the first kind of abortable objects [2,7] that guarantee some degree of progress even under high contention. The definition is simple and natural: intuitively, an operation on a k-abortable object can abort only if k operations from distinct processes succeed during the execution of the aborted operation. We first show that k-abortable objects can e...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011